package com.conan.zone.framework.service;

import java.util.List;

import com.conan.zone.framework.model.ParamBean;

/**
 * 
 * @author Conan
 *
 * @param <T>
 */
public interface IAbstractService<T extends ParamBean> {
	/**
	 * 生成分页需要的json
	 * @param list
	 * @return
	 */
	public String tableJson(T t,String sEcho,List<T> list);
	
	/**
	 * 查询别表
	 * @param t
	 * @return
	 */
	public List<T> search(T t);
	
	/**
	 * 查询总记录数
	 * @param t
	 * @return
	 */
	public int numOfTotal(T t);
	
	/**
	 * 根据主键取数据
	 * @param pk
	 * @return
	 */
	public T selectByPk(Long pk);
	
	/**
	 * 
	 * @param t
	 * @return
	 */
	public int updateByPk(T t);
	
	/**
	 * 
	 * @param pk
	 * @return
	 */
	public int deleteByPk(Long pk);
	
	/**
	 * 获取所有数据
	 * @return
	 */
	public List<T> all(T t);
}
